Video recording system, method, and computer program for memory space distribution in a video recording system

ABSTRACT

In the present digital age, the storage of data and the administration of the stored data is a problem area which, despite rapidly dropping prices for storage media, is increasingly important as technology becomes more sophisticated. In the field of security technology, for instance, storing streams of video data or compressed streams of video data that are recorded by surveillance cameras plays an important role. Some of the streams of video data stored should be stored for a defined length of time, such as a few days, while some data should be stored permanently, and there is accordingly a need for a highly flexible solution to the problem. A video recording system for recording video data, a method for memory space distribution in the video recording system, and a computer program for this purpose are proposed.

CROSS-REFERENCE TO A RELATED APPLICATION

The invention described and claimed hereinbelow is also described inGerman Patent Application DE 102006018959.0 filed on Apr. 24, 2006. ThisGerman Patent Application, whose subject matter is incorporated here byreference, provides the basis for a claim of priority of invention under35 U.S.C. 119(a)-(d).

BACKGROUND OF THE INVENTION

The invention relates to a video recording system for recording videodata, to a method for memory space distribution in the video recordingsystem, and to a computer program.

In the present digital age, the storage of data and the administrationof the stored data is a problem area which, despite rapidly droppingprices for storage media, is increasingly important as technologybecomes more sophisticated.

In the field of security technology, for instance, storing streams ofvideo data or compressed streams of video data that are recorded bysurveillance cameras plays an important role. Some of the streams ofvideo data stored should be stored for a defined length of time, such asa few days, while some data should be stored permanently, and there isaccordingly a need for a highly flexible solution to the problem.

In the field of security technology, two different principles forimplementing data storage are typically employed:

First, the data are stored on local data media (such as hard disks),which are directly connected to the video camera. Second, memorynetworks are known that record and store the data streams originating inthe surveillance cameras. In both of these typical principles, old datathat are no longer needed are overwritten or erased.

For the application of video reproduction, U.S. Pat. No. 5,360,007 forinstance discloses a client-server system, in which video programs, suchas films, from a single central mass store are broken down intofragments under the control of an administration program, and thefragments are distributed to many individual memories in the form ofmagnetic disks; the individual memories are allocated to different dataservers. If then the same video program is called up from the memoryservers by many clients, then the clients must request the individualfragments from different memory servers in order to obtain the completevideo program. In this way, the access load put on the various memoryservers by the clients is distributed.

SUMMARY OF THE INVENTION

It is therefore an object of the present invention to provide a videorecording system, method, and computer program for memory storage spacedistribution in a video recording system, in which to avoid thedisadvantages of the prior art.

In keeping with these objects and with others which will become apparenthereinafter, one feature of the present invention resides, brieflystated, in a video recording system for recording video data in a memorynetwork including interfaces for connecting memory servers to storagevolumes and for connecting writing clients, the video recording system,comprising at least one writing client for furnishing the video data; anallocation device for the memory network, said allocation device beingconfigured for administering a storage volume of the memory servers, inthat said allocation device dynamically allocates statically dividedmemory blocks of the storage volume to said at least one writing client;and at least one surveillance camera which is configured for generatingthe video data and is hard-wired to said at least one writing client.

Another feature of the present invention resides, briefly stated, in amethod for memory space distribution, comprising providing at least onewriting client for furnishing the video data; administering by anallocation device for the memory network, administering a storage volumeof the memory servers, in that said allocation device dynamicallyallocates statically divided memory blocks of the storage volume to saidat least one writing client; and generating the video data by at leastone surveillance camera, which is hard-wired to said at least onewriting client, in which in an initialization step, the storage volumeof the at least one memory server is subdividing by the allocationdevice into static memory blocks, and in an allocation step, the memoryblocks are distributed dynamically to the writing clients by theallocation device, wherein during the running time of the memorynetwork, added storage value is subdivided into additional static memoryblocks.

A further feature of the present invention resides, briefly stated, in acomputer program having program code means, for performing all the stepsof the method of the invention, if the program is executed on a computerand/or on a video recording system of the invention.

The proposed video recording system, method for memory spacedistribution, and computer program are proposed have the same advantageof administering the available storage volume in a memory networkoptimally and/or in a failsafe way.

The video recording system of the invention is suitable and/or embodiedfor recording video data, in particular compressed and/or encoded videodata, in a memory network; as the protocol in the memory network, TCP/IPis preferably employed. The memory network includes interfaces, inparticular network nodes, for networked connection of a plurality ofmemory servers and a plurality of writing clients. Preferably, eachmemory server and/or each writing client is allocated an individualinterface, or interface of its own, in the memory network.

An allocation device is embodied by software and/or hardware foradministering the storage volume located on the memory servers. Thestorage volume is preferably implemented in the form of mass stores, inparticular RAID drives, local hard disks of the memory servers and/or ofthe writing clients. In this last embodiment, the writing clients aresimultaneously used as memory servers and thus perform a dual function.

It is provided that the allocation device is embodied by software and/orhardware for dynamic allocation of statically divided memory blocks tothe writing clients. Preferably, the allocation device is furthermoreembodied for statically dividing the storage volume into the staticmemory blocks.

The static division and the static memory blocks are preferablycharacterized in that this division of the memory servers is notchanged, or not changed fundamentally, during the running time of thememory network. Conversely, dynamic allocation of the memory blocks tothe writing clients refers to an event-controlled and/ormemory-load-dependent allocation, particularly during the running timeof the memory network. Preferably, the allocation device is embodied asa central network device for the entire memory network.

According to the invention, the video recording system includes at leastone surveillance camera, which is embodied for generating the video dataand is hard-wired to the at least one writing client.

The invention is based on the concept that previously known memoryarchitectures, that is, local storage or storage via memory networks, isnot optimal, especially for the field of video surveillance systems.Particularly when compressed streams of video data furnished bysurveillance cameras are stored in memory, the data volume generated canbe predicted in advance only poorly, since the data volume is dependenton the compression of the original video data, on the algorithms used,and on the changes over time in the picture data. In local storage ofcompressed streams of video data, which has been usual so far, thepresumption is basically a worst-case scenario, so that redundantsecurity memory space must be furnished, which is unnecessary andcost-intensive.

A disadvantage in using memory networks is typically that powerfulmemory servers are needed, which receive the data streams from thewriting clients and administer and store them. The invention converselyproposes a video recording system in which the static memory blocks areallocated dynamically to the writing clients during the running time.After the allocation, the writing clients are preferably capable ontheir own, and in particular without the interposition of the allocationdevice, of writing the allocated memory blocks. This architectureassures first that a writing client is allocated only as much staticmemory as it actually and/or currently needs, and second, that toachieve the allocation device, an oversize server need not be provided,since the data to be stored are sent by the writing clients directly tothe memory servers, and the allocation device takes on only theadministration of the memory blocks.

In a preferred embodiment, the static memory blocks are embodied asreserved physical regions of the storage volume, and in particular ofthe respective storage medium. Because physical regions of a storagevolume are allocated—instead of logical regions, as is otherwiseusual—fragmentation of the storage volume is averted. Preferably, thestatic division is embodied as permanent formatting. The memory blockspreferably have a memory size of at least 10 megabytes, and inparticular more than 100 megabytes, preferably more than 1 gigabyte.With this memory block size, it assured that a writing client need notconstantly jump from one physical memory block to the next and in thisway be unnecessarily burdened. On the other hand, by an optionallimitation of the memory block size to less than 10 gigabytes,preferably less than 5 gigabytes, thrifty distribution of the storagevolume is assured.

Because optionally all the memory blocks have the same memory size,especially simple administration of the storage volume by the allocationdevice is achieved. Alternatively, it may be provided that the memoryblocks are divided up into only a few different, but standardized,memory sizes, for instance fewer than five different memory sizes. Thislast embodiment makes it possible for writing clients that are known tohave a relatively large memory requirement, which can be ascertained forinstance with knowledge of the camera properties, to be allocated memoryblocks of a suitably adapted size.

The allocation device preferably includes an allocation module, whichallocates the static memory blocks to a supply quantity for free memoryblocks, or to one or more occupation quantities for used memory blocks.By means of the allocation module, an allocation table, from which onthe one hand a list for free memory blocks and on the other one or morelists of used memory blocks can be taken. As elements of the quantitiesand/or lists, addresses of the memory blocks are preferably used.

The allocation of memory blocks is preferably done dynamically and/or atperiodic intervals. In particular, the allocation module is embodiedsuch that upon the request of a writing client, a memory block from thesupply quantity of an occupation quantity is allocated, and/or uponrelease of a memory block by a writing client, a memory block from theoccupation quantity of the released memory block is allocated to thesupply quantity. Thus all the operations of requests and releases ofmemory blocks are defined on the basis of the static memory blocks. Thisaspect further emphasizes the advantage that fragmentation problems,which occur from writing and erasing operations in systems withlogically allocated memory space, are precluded.

In a refinement of the invention, the supply quantity and/or theoccupation quantity and/or occupation quantities are embodied asconcatenated lists; preferably each element of one quantity or listpoints to the following and/or preceding element. This embodiment allowsespecially simple administration of the memory blocks. Preferably, theconcatenated lists are embodied as rings, so that FIFO (first in firstout) structures can be displayed, for instance for endless recordings bythe video camera.

In an especially preferred embodiment, a writing client, and inparticular precisely one writing client, is allocated to each occupationquantity. This allocation, after a transfer of data about the occupationquantity, and in particular the address data of the memory blocks, fromthe allocation device to the writing client, enables the writing clientto “know” the memory space allocated to it by the allocation device, orin other words its allocated memory blocks, and it can thereafter storeits data streams in memory on its own, and in particular withoutinterpositions of the allocation device.

It is preferably provided that the allocation module allocates memoryblocks of physically different storage media to an occupation quantity.This embodiment is based on the concept that a physical storage medium,such as a hard disk, can fail. Because the memory blocks of anoccupation quantity are allocated to a plurality of physically differentstorage media, if one storage medium fails only a limited number ofmemory blocks, and in particular only one memory block, is affected. Inan especially secure embodiment, each memory block is allocated to anoccupation quantity on a different storage medium, so that no more thanone memory block is allocated to one occupation quantity per storagemedium. In supplementary fashion, known mechanisms for data security maybe implemented, such as RAID technology.

Optionally, the video recording system also includes one or more memoryservers, which are embodied for instance as so-called iSCSI servers.Alternatively, the memories are embodied on the basis of NFS or someother type of NAS (Network Attached Storage). In particular, the iSCSIservers can be embodied as RAID drives or as VIP-X video servers, soldby the present Applicant, with local hard drives. Preferably, the memorynetwork and/or the memory servers are embodied for block-based accessfor reading and writing data.

It is preferred that a plurality of memory blocks or each memory blockof one of the occupation quantities or each of the occupation quantitiesincludes a data region, also called a header, in which as data, areference on a writing client allocated to the occupation quantityand/or information about the data stored in the memory block and/orinformation about the preceding and/or following memory block in thelist of the occupation quantity is included. The reference to theallocated writing client is for instance embodied as a MAC (Media AccessControl) address—also known as a LAN address, ethernet ID, or for Apple,Airport ID—and is the hardware address of a network device that servesthe purpose of uniquely identifying the device in the network.

For instance, the header thus references a specific surveillance cameraor the like. Moreover, the header includes information about the datastored in a memory block, in particular information about a recordingtime period with a surveillance camera or the like. In one possibleembodiment of the invention, the header also includes information aboutthe preceding and/or following memory block in the list of theoccupation quantity. The header preferably has a very small data volumeand in particular takes up less than 1% of the memory block in eachcase.

By using the header data, it is possible for the recording system toremain operationally ready even if the allocation device fails:

First, it is possible for a substitute allocation device to collect theheader data of all the memory blocks and thereby gain an overview aboutthe allocation of memory blocks. After this analysis phase, thesubstitute allocation device is in a position to take on the function ofthe allocation device that failed.

Second, solely from the header data, the writing clients are in aposition to recognize the particular memory block that follows and tostore data, data streams, or video data in memory on their own, and inparticular without access to the allocation device.

The video recording system is optionally characterized by at least onereading client, which is embodied for reading out the video data storedin memory with the recording system. Preferably, the reading clientincludes a video data decoder. The reading client is embodied bysoftware and/or hardware in such a way that it requests data, inparticular address data, about an occupation quantity from theallocation device and evaluates it and/or, by requesting and evaluationof the headers of the memory blocks, puts the data, in particular theaddress data, about an occupation quantity together.

Once the data about the occupation quantity, which is preferably in theform of a block address list, is received or set up, the reading clientis embodied such that it can read out the video data of an occupationquantity from the memory server or memory servers on its own, inparticular without interposition of the allocation device. Once again,this shows the advantage of the proposed architecture, since reading outthe video data once the (address) data of an occupation quantity areknown can be done by the reading client entirely without theinterposition of the allocation device.

The at least one writing client is furthermore embodied for requestingdata about an occupation quantity allocated to the at least one writingclient. The writing client is preferably embodied as a video dataencoder and/or is hard-wired to it. Preferably, the writing client isembodied such that after receiving the data about the occupationquantity, it can store data in the memory blocks of the associatedoccupation quantities on its own, that is, independently of theallocation device. The video data, which in particular is encoded, bysequentially writing data into a memory block of the occupation quantityuntil such time as this memory block is full. Once the memory block hasbeen fully written, the writing client changes to the next block of theoccupation quantity, in particular of the block address list.

The writing client is furthermore optionally embodied for requestingand/or releasing memory blocks for adding to or reducing the allocatedoccupation quantity. Addition is necessary for instance if the recordingtime of a video camera exceeds a defined limit, so that the storagevolume allocated until then is no longer adequate. A release of memoryblocks can be initiated by an erasure operation originating at thewriting client.

In a preferred refinement of the recording system, the writing client isembodied such that in the event of a writing error in a current memoryblock of the allocated occupation quantity, the writing client, on itsown and/or independently, changes to a different memory block of theassociated occupation quantity. If no further memory block is available,then a writing error leads to a request to the allocation device for afurther memory block. Such a change of memory block or a new request fora further memory block is also initiated if the writing client is unableto access a memory block, for instance because of a communication error.Since each memory block is an independent unit, a writing error, forinstance if there is a power failure, can at most lead to a loss of thecurrent memory block but not to the loss of the entire writing clientrecording.

If additional storage volume is added during the running time of thememory network, this additional storage volume is subdivided intoadditional static memory blocks and allocated to the supply quantity ofmemory blocks.

If the storage volume fails during the running time of the memorynetwork, the affected memory blocks of the storage volume are deletedfrom the supply quantity and/or the occupation quantities.

One important aspect of the invention is thus that all the mass storesfor recording data in a memory network, or in other words the totalcapacities of the memory servers in the network, are made virtual. Thedivision of the storage volume into memory blocks of fixed size leads toa defined fragmentation of the storage volume, and this definedfragmentation no longer changes during the running time of the memorynetwork, since all the operations for requesting and releasing memoriesare defined in terms of these fixed memory blocks.

In the proposed system for recording video data, the data from arespective video source is independently stored in the memory blocks bythe video server associated with the video source, and this server actsas a writing client in the memory network. The complete recordings ofthe data from a data source of a video server are available, afterstorage in memory, for instance in the form of a concatenated list ofoccupied memory blocks. Old memory blocks and memory blocks no longerneeded from the list of occupied memory blocks, or in other words fromthe occupation quantity, can be released and are reassigned to the listof free blocks, in other words to the supply quantity.

Memory blocks with data that are to be stored permanently are removedfrom the memory network and are no longer available. Playback of thestored data is also possible by direct access to the memory servers,without the presence of the writing client and in particular of thevideo servers. For this purpose, the reading clients require onlyknowledge of the list, in particular the concatenated list, such as theblock address list, and can then create an overview of the status ofrecording in the memory network on their own, in particular without theallocation device and/or writing clients. Simultaneous access to onememory server by a plurality of writing clients and/or reading clientsis then possible.

Compared to conventional memory networks, the proposed architecturemakes only a slight reserve capacity necessary to design the memorynetwork in a failsafe way with regard to memory errors. Since mostwriting clients and/or memory servers contain a plurality of physicallyindependent memory units as standard, the need for the memory blocks ofan occupation quantity to be distributed to physically independentmemory units can usually be met without additional expense and thuseconomically.

The novel features which are considered as characteristic for thepresent invention are set forth in particular in the appended claims.The invention itself, however, both as to its construction and itsmethod of operation, together with additional objects and advantagesthereof, will be best understood from the following description ofspecific embodiments when read in connection with the accompanyingdrawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a first exemplary embodiment of a recording system forrecording video data, in a schematic block diagram;

FIG. 2 shows the video recording system of FIG. 1 during initialization;

FIG. 3 shows the video recording system of FIG. 1 during a phase ofallocating memory blocks to the writing clients;

FIG. 4 shows the video recording system of FIG. 1 during a writingphase;

FIG. 5 shows the video recording system of FIG. 1 after a release orre-request of memory blocks on the part of the writing clients; and

FIG. 6 shows the video recording system of FIG. 1 in the event offailure of a storage medium or of the allocation device.

DESCRIPTION OF THE PREFERRED EMBODIMENTS

Identical elements in the drawings are all identified by the samereference numerals.

FIG. 1 in a schematic block diagram shows a video recording system 1,which includes a network or memory network 2, to which memory servers 3and 4, writing clients A and B, reading clients 5 and 6, and anallocation device 7 are connected or networked. The network 2 transmitsdata by the TCP/IP protocol and can be embodied physically as a landlineand/or wireless network, and in particular as part of the Internet.

The memory servers 3 and 4, like the writing clients and reading clientsA, B, 5, 6, stand for an arbitrary number of such components in thevideo recording system. The memory servers, or all the components, areembodied for instance as iSCSI servers, but in principle the memoryservers 3 and 4 may be embodied arbitrarily. Each memory server includestwo storage media 3 a, b and 4 a, b, respectively, which are eachembodied as separate and thus physically independent component units orgroups. This number, too, is merely an example.

The storage media 3 a, b and 4 a, b serve to store data in the form ofcompressed video data, audio data, or other data and information thatare furnished by the writing clients A, B. The memory servers 3 and 4are each networked to the network 2 via an interface in the form of anetwork node.

The writing clients A and B are each connected to a respective videocamera, A-cam and B-cam. The cameras A-cam and B-cam are embodied assurveillance cameras, for instance black-and-white cameras, colorcameras, UV cameras, or infrared cameras, or the like. The cameras A-camand B-cam furnish streams of video data to the writing clients A and B,respectively. Encoder devices are provided in the writing clients A andB and encode the streams of video data, for instance by the MPEG method.The writing clients A and B may for instance be embodied as VIP-X videoservers, of the kind sold by the present Applicant. The writing clientsA and B are networked to the network 2 via interfaces in the form ofnetwork nodes.

The reading clients 5 and 6 each have a decoder, and the decoders areembodied for decoding encoded and/or compressed data, in particularstreams of video data. The reading clients 5 and 6 are each connected toa respective monitor 5 a and 6 a, on which the picture contents of thedecoded streams of video data can be displayed. Alternatively or inaddition, the reading clients 5 or 6 are equipped with further outputunits for displaying transmitted information. The reading clients 5 and6 are networked to the network 2 via interfaces that are embodied asnetwork nodes.

The allocation device 7 performs the task of administering the availablestorage volume of the memory servers 3 and 4 and making it available tothe writing clients A and B and reading clients 5 and 6. The allocationdevice 7 is embodied as a central or centralized component, of whichthere is only one in the video recording system 1.

FIG. 2 shows the video recording system 1 in the same view as in FIG. 1,during initialization.

During this initialization phase, the allocation device 7, via thenetwork 2, performs a division of the storage media 3 a, b, 4 a, b intofixed memory blocks. The division of the storage media 3 a, b, 4 a, b isdone into physical regions that each have a size of 1 gigabyte, forinstance. In an especially preferred embodiment, the memory blocks areall the same size.

Optionally, it is provided that even during the initialization, theallocation device 7 inserts a header into each memory block, and theheader includes information about the next memory block and/or apreceding memory block.

In the allocation device 7, a supply quantity 8 of free/unused memoryblocks in the storage media 3 a, b, 4 a, b is formed, in the form of amemory block address list, and each element in the memory block addressrefers uniquely to one physical region in the storage media 3 a, b, 4 a,b.

FIG. 3 shows the video recording system 1 of FIG. 1 in the same view asin that drawing, during the allocation of memory blocks to the writingclients A and B.

Upon the activation of the writing clients A and B, these clients send arequest for memory space to the allocation device 7. The allocationdevice 7 generates an occupation quantity 9 for the writing client A andan occupation quantity 10 for a writing client B by allocating memoryblocks of the supply quantity 8 to the respective occupation quantities9 and 10. The occupation quantities 9 and 10 also include, as theirelements, only the memory block addresses.

These occupation quantities 9 and 10 are then forwarded to the writingclients A and B, respectively, via the network 2. In an especiallysecure embodiment of the video recording system 1, the generation of theoccupation quantities 9 and 10 is effected such that the memory blocksof the individual occupation quantities each originate in differentstorage media 3 a, b, 4 a, b. For instance, one memory block of theoccupation quantity 9 originates in the storage medium 3 a, and theother originates in the storage medium 4 a.

FIG. 4 shows the video recording system 1 of FIG. 1 during a writingphase. During the writing phase, the writing clients A and B generateencoded streams of video data, which are forwarded via the network 2 tothe allocated memory blocks in the storage media 3 a, b, 4 a, b. As canbe seen from the drawing, during the writing operation the encodedstreams of video data are transmitted without interposition of theallocation device 7. Thus the writing clients A, B are capable, on theirown and/or independently, of writing the encoded streams of video dataonto the storage media 3 a, b, 4 a, b. The writing clients A and B beginwriting onto the first memory block allocated to them.

As soon as this first memory block is full, the next memory block isselected from the occupation quantity 9 and 10 of the writing clients Aand B, respectively, and the writing operation onto the selected memoryblock continues. In addition to the encoded streams of video data orother information, such as audio data, header information is stored inthe memory blocks; it includes a unique association of the writingclient A or B and time information, such as the recording time of theencoded streams of video data transmitted. The unique association can beachieved for instance by means of a MAC (Media Access Control) addressof the cameras A-cam and B-cam, respectively.

For reading out the stored data of a writing client A and B,respectively, the respective reading clients 5 and 6 request theoccupation quantities 9 and 10, respectively, from the allocation device7. After the occupation quantities 9 and 10 have been forwarded, thereading clients 5 and 6 are capable on their own, and in particularwithout further interposition of the allocation device 7, of accessingthe respective memory server 3 and 4 and reading out the memory blocks,referenced via memory block addresses, in the occupation quantities 9and 10. Once again, it must be stressed that the readout after thetransmission of the respective occupation quantity 9 or 10 is done via anetwork connection, without interposition of the allocation device.

FIG. 5 illustrates the behavior of the video recording system 1 of FIG.1 upon a release of or request for memory blocks by the writing client Aand B. As could already be seen from FIG. 4, the writing client A hasalready written into its two memory blocks allocated to it completely,as represented by the black shading of the memory blocks marked A. Sothat it can continue to store streams of video data or encoded streamsof video data in memory, the writing client A sends a request to theallocation device 7, which as its reaction to this adds a free memoryblock from the supply quantity 8 to the occupation quantity 9 andforwards the augmented occupation quantity 9 to the writing client A.The writing client A is now in a position to write further streams ofvideo data into the newly added memory block.

By comparison, the writing client B is releasing a memory block, once ithas been found during the writing operation in FIG. 4 that the number ofmemory blocks allocated in the occupation quantity 10 is too large. Inthat case, the writing client B sends a release to the allocation device7, which thereupon transfers one memory block from the occupationquantity 10 to the supply quantity 8. Such a release also takes placefor instance if a data erasure in one or more memory blocks is initiatedby the writing client B. Regardless of the reorganization of theoccupation quantities and supply quantities, the compressed streams ofvideo data continue to be transmitted by the writing clients A, B ontheir own to the memory servers 3 and 4, respectively.

As can be seen in FIG. 5, reading clients 5 and 6 are also informed ofthe change in the occupation quantity 9 and 10, respectively. Thisinformation can either be output actively to the reading clients 5 or 6by the allocation device 7, or the reading clients 5 or 6 can ask atregular and/or periodic intervals or in an event-controlled fashion forupdating of the occupation quantities 9 and 10, respectively. It shouldbe noted that the request for and release of memory blocks is alwaysdone on the basis of the static memory blocks defined during theinitialization, so that uncontrolled fragmentation of the storage media3 a, b, 4 a, b cannot occur.

If new storage media and/or memory servers are connected to the videorecording system 1, thus increasing the storage volume, then the storagevolume gained is likewise divided by the allocation device into memoryblocks, and the addresses of the memory blocks are administered in thesupply quantity 8. If a memory server and/or a storage medium isexcluded—intentionally or unintentionally—from the video recordingsystem 1, then the allocation device 7 deletes the respective addressesfrom the supply quantity or the occupation quantity and—ifneeded—replaces them with free, available memory blocks.

FIG. 6 illustrates two mechanisms for enhancing the failsafety of thevideo recording system 1, again in terms of the video recording system 1of FIG. 1.

If a storage medium, in the present case assuming the storage medium 4a, fails, it is provided that the writing client A, which attempts toaccess the failed storage medium 4 a, notes this failure. It does notmatter whether the failure was directly due to a network error on thepart of the network 2 or a server error of the memory server 4 or astorage medium error. If the writing client A finds that it cannotaccess a memory block in its occupation quantity 9, then it skips thismemory block and writes the information to be stored, in particular thevideo data, onto the memory block following it. In addition, the writingclient A sends a message to the allocation device 7, which removes thefailed memory block and/or the failed storage medium 4 a, as applicable,from the supply quantity 8 or the occupation quantities 9 and 10. Sinceeach memory block represents an independent unit, and preferably thememory blocks of one occupation quantity 9 or 10 are distributed todifferent storage media 3 a, b, 4 a, b, a writing error, for instance inthe event of a power failure, leads at most to the loss of the currentmemory block but not to the loss of all the recordings of the writingclient.

As a second mechanism, it is provided that in each written memory block,a header is inserted in which a unique reference to the writing clientA, B and information about the recording time are stored. By means ofthis header, the video recording system 1 is redundant, for protectionin the event of a failure of the allocation device 7.

As already noted above, each writing client A, B and/or reading client 5or 6 has a list available of the memory blocks to be used or read outfrom. A brief failure of the allocation device 7 accordingly does notlead to problems until new memory blocks are requested or occupiedmemory blocks have to be released.

In the event that the allocation device 7 fails permanently, then it ispossible for a substitute allocation device 11 to be formed, by readingout the header information from all the memory blocks. Since all therelevant information on the association of the memory blocks with therespective occupation quantities 9 or 10 and the supply quantity 8 arestored in the headers, it is possible to reconstitute these quantitiesonce the header information has been acquired. Once the allocations havebeen reconstructed, the substitute allocation device 11 completely takesover for the failed allocation device 7. Preferably, the substituteallocation device 11 and the allocation device 7 are identically and/oranalogously constructed.

Alternatively or in addition, it is possible for each individual writingclient A, B or reading client 5 or 6 to collect the header informationand in this way to construct the particular occupation quantity 9 or 10required on its own and/or independently.

Optionally, it is provided that the allocation device 7 performs adynamic adaptation of the memory block distribution and thus of theaddress lists to the writing clients A and B, in order to adapt thedistributed memory capacity, for instance to alarm-controlled recordingsand recording methods that employ dynamic bit rates.

In summary, the video recording system 1 thus makes all the storagemedia 3 a, b, 4 a, b virtual and distributes them to the writing clientsA, B as a function of the memory capacity and/or in an event-orientedfashion. The data from the writing clients A, B are each storedindependently in the memory servers 3 and 4, respectively. Playback ofthe recorded data is possible by direct access by the reading clients tothe memory servers, without the presence of the writing clients A, B orof the allocation device 7 or 11. For the sake of knowing the structureof the occupation quantity 9 or 10, each writing client and/or readingclient A, B, 5, 6 can create an overview about the status of therecording in the entire system at any time. This is supported, amongother ways, by simultaneous access to one server by a plurality ofclients.

It will be understood that each of the elements described above, or twoor more together, may also find a useful application in other types ofmethods and constructions differing from the type described above.

While the invention has been illustrated and described as embodied in avideo recording system, method and computer program for memory spacedistribution in a video recording system, it is not intended to belimited to the details shown, since various modifications and structuralchanges may be made without departing in any way from the spirit of thepresent invention.

Without further analysis, the foregoing will so fully reveal the gist ofthe present invention that others can, by applying current knowledge,readily adapt it for various applications without omitting featuresthat, from the standpoint of prior art, fairly constitute essentialcharacteristics of the generic or specific aspects of this invention.

What is claimed as new and desired to be protected by Letters Patent isset forth in the appended claims.

The invention claimed is:
 1. A video recording system for recordingvideo data in a memory network including interfaces for connectingmemory servers to storage volumes and for connecting writing clients,the video recording system comprising at least one writing client forfurnishing the video data; an allocation device for the memory network,said allocation device configured for administering a storage volume ofthe memory servers, in that said allocation device, in an allocationstage, dynamically allocates statically divided memory blocks ofphysically different storage media of the storage volume to said atleast one writing client and transfers address data of the allocatedmemory blocks to said at least one writing client; and at least onesurveillance camera which is configured for generating the video dataand is hard-wired to said at least one writing client, wherein after theallocation stage, said at least one writing client writes, on its own,using the address data previously transferred to write the video datadirectly to at least one of the allocated memory blocks of the storagevolume without further interposition of the allocation device.
 2. Avideo recording system as defined in claim 1, wherein said staticallydivided memory blocks are configured as reserved physical regions ofsaid storage volume.
 3. A video recording system as defined in claim 2,wherein the static division of the storage volume is configured aspermanent formatting.
 4. A video recording system as defined in claim 1,wherein the memory blocks have a parameter selected from the groupconsisting of a memory size of at least 10 megabytes, a memory size lessthan 10 gigabytes, and both.
 5. A video recording system as defined inclaim 4, wherein said memory blocks have the memory size of more than100 megabytes.
 6. A video recording system as defined in claim 4,wherein the memory blocks have a memory size more than 1 gigabyte.
 7. Avideo recording system as defined in claim 4, wherein the memory blockshave the memory size of less than 5 gigabytes.
 8. A video recordingsystem as defined in claim 1, wherein all the memory blocks have a samememory size.
 9. A video recording system as defined in claim 1; andfurther comprising an allocation module which is configured as anelement selected from the group consisting of software, hardware andboth for allocating the memory blocks to an element selected from thegroup consisting of a supply quantity for free memory blocks, and one ormore occupation quantities for used memory blocks.
 10. A video recordingsystem as defined in claim 9, wherein the allocation of the memory blockis effected in a manner selected from the group consisting ofdynamically, at periodic intervals, and both.
 11. A video recordingsystem as defined in claim 9, wherein quantities selected from the groupconsisting of the supply quantity, the occupation quantity, theoccupation quantities, and combinations thereof are configured asconcatenated lists.
 12. A video recording system as defined in claim 9,wherein each occupation quantity is allocated precisely one writingclient.
 13. A video recording system as defined in claim 9, wherein anelement selected from the group consisting of a plurality of memoryblocks, each memory block, and one of the occupation quantities includesa data region, in which, as data, a reference to an element selectedfrom the group consisting of an allocated writing client, informationabout the data stored in the memory block, information about a precedingmemory block, information about following memory block, and acombination thereof, is included in the list of the occupation quantity.14. A video recording system as defined in claim 9; and furthercomprising at least one reading client configured for a step selectedfrom the group consisting of requesting and evaluating data about anoccupation quantity for the allocation device, assembling data via anoccupation quantity, and both by requesting and evaluating the dataregions of the memory blocks.
 15. A video recording system as defined inclaim 14, wherein the at least one writing client is configured for astep selected from the group consisting of requesting data about anoccupation quantity allocated to the writing client, for requestingfurther memory blocks for supplementing the allocated occupationquantity, and both.
 16. A video recording system as defined in claim 1,wherein the at least one writing client, in the event of a writing errorin a current memory block of the associated occupation quality, isconfigured as an element selected from the group consisting of software,hardware, and both for a step selected from the group consisting of achange of the memory block within the allocated occupation quantity, arequest of a further memory block from the allocation device, and both.17. A method for memory space distribution in a video recording system,comprising the steps of providing at least one writing client forfurnishing video data; in an initialization step, administering by anallocation device for the memory network, a storage volume of the memoryservers, in that said allocation device dynamically allocates staticallydivided memory blocks of the storage volume, comprising physicallydifferent storage media, to said at least one writing client, theadministering including dynamically distributing and transferring clientand address data of the dynamically distributed memory blocks to said atleast one writing client to enable said at least one writing client to,on its own, directly write to the allocated memory blocks of the storagevolume, wherein during the running time of the memory network, addedstorage value is subdivided into additional static memory blocks,generating the video data by at least one surveillance camera, which ishard-wired to said at least one writing client, and in a writing step,writing the video data by said at least one writing client directly toat least one of the memory blocks dynamically distributed and previouslyallocated to said at least one client without further interposition ofthe allocation device.
 18. A computer program product comprising anon-transitory computer readable medium having computer readable programcode means embodied therein for performing all the steps of the methodas defined in claim 17, upon execution of the program code means by acomputer.
 19. The computer program product of claim 18, wherein each ofthe elements of the program code means is executed on the videorecording system defined by claim
 1. 20. A video recording system forrecording video data in a memory network including interfaces forconnecting memory servers to storage volumes and for connecting writingclients, the video recording system comprising at least one writingclient for furnishing the video data; an allocation device for thememory network, said allocation device configured for administering astorage volume of the memory servers that is statically divided intomemory blocks, wherein each memory block is located in a physicallydifferent storage media, and wherein in an allocation stage, theallocation device accesses an allocation table identifying lists of freeand used memory blocks and allocates memory blocks located respectivelyin the physically different storage media to the at least one writingclient and transfers address data of the allocated memory blocks to thewriting client in order to render the writing client to write, on itsown, directly to allocated memory blocks; and at least one surveillancecamera which is configured for generating the video data and ishard-wired to said at least one writing client, wherein in a writingstage, the at least one writing client uses the address data to writethe video data directly to at least one of the allocated memory blockswithout relying on the allocation table and without furtherinterposition of the allocation device.